This invention relates to electronic components for controlling a drive signal in an apparatus that measures properties of material flowing through at least one vibrating conduit in the apparatus. More particularly, this invention relates to an algorithm used to initialize and maintain a drive signal that oscillates the conduit at a desired frequency.
It is known to use Coriolis effect mass flowmeters to measure mass flow and other information for materials flowing through a conduit in the flowmeter. Exemplary Coriolis flowmeters are disclosed in U.S. Pat. No. 4,109,524 of Aug. 29, 1978, U.S. Pat. No. 4,491,025 of Jan. 1, 1985, and Re. 31,450 of Feb. 11, 1982, all to J. E. Smith et al. These flowmeters have one or more conduits of straight or curved configuration. Each conduit configuration in a Coriolis mass flowmeter has a set of natural vibration modes, which may be of a simple bending, torsional or coupled type. Each conduit is driven to oscillate at resonance in one of these natural modes. Material flows into the flowmeter from a connected pipeline on the inlet side of the flowmeter, is directed through the conduit or conduits, and exits the flowmeter through the outlet side of the flowmeter. The natural vibration modes of the vibrating, material filled system are defined in part by the combined mass of the conduits and the material flowing within the conduits.
When there is no flow through the flowmeter, all points along the conduit oscillate due to an applied driver force with identical phase or small initial fixed phase offset which can be corrected. As material begins to flow, Coriolis forces cause each point along the conduit to have a different phase. The phase on the inlet side of the conduit lags the driver, while the phase on the outlet side of the conduit leads the driver. Pick-off sensors on the conduit(s) produce sinusoidal signals representative of the motion of the conduit(s). Signals output from the pick-off sensors are processed to determine the phase difference between the pick-off sensors. The phase difference between two pick-off sensor signals is proportional to the mass flow rate of material through the conduit(s).
Meter electronics generates a drive signal to operate the driver and determines a mass flow rate and other properties of a material from signals received from the pick-off sensors. Conventional meter electronics are made of analog circuitry which is designed to generate the drive signal and detect the signals from the pick-off sensors. Analog meter electronics have been optimized over the years and have become relatively cheap to manufacture. It is therefore desirable to design Coriolis flowmeters that can use conventional meter electronics.
It is a problem that conventional meter electronics must work with signals in a narrow range of operating frequencies. This range of operating frequencies is typically between 20 Hz and 200 Hz. This limits the designers to generating a narrow range of drive signals that will resonate the flow tubes at these frequencies. Therefore, it is ineffective to use conventional meterelectronics to generate the drive signals for some flowmeters, such as a straight tube flowmeter, which operate in a higher frequency range of 300 Hz-800 Hz. Straight tube flowmeters operate at 300 Hz-800 Hz because straight tubes tend to exhibit smaller sensitivity to Coriolis effects used to measure mass flow rate. Therefore, conventional meter electronics cannot effectively be used to generate the drive signal for straight tube flowmeters.
Those skilled in the Coriolis flowmeter art desire to design meter electronics that can be used with several different types of flowmeters. This would allow the manufacturers to take advantage of economies of scale to produce less expensive meter electronics for flowmeters. A digital signal processor is desirable because the higher demand in measurement resolution and accuracy put on analog electronic components by flowmeters operating at higher frequencies, such as straight tube designs, are avoided by the digitalization of signals from the pick-offs as the signals are received by the meter electronics. Furthermore, the instructions for signaling processes used by a digital processor may be modified to operate at several different frequencies for both determining the properties of a material and generating the drive signals.
One problem in designing meter electronics, that is to be used with several different types of flowmeters, is the start up or initialization of the flowmeter. Straight tube flowmeters are highly damped when compared to a dual curved tube counterpart. Typically, a straight tube flowmeter has zeta values on the order of 10xe2x88x924 which causes the straight tube flowmeters to be an order of magnitude more damped. This makes starting the straight tube flowmeters problematic.
One particular problem in starting a straight tube flowmeter is when the material flowing through the meter includes entrained air. The entrained air causes problems on start up as it is difficult to get a reliable reading of the proper drive frequency. At the same time, one must ensure not to overstress the sensor due to excess drive excitation on start up. Therefore, most current start operations stall or in other words never reach the desired drive frequency. Thus, a more reliable start up algorithm is needed in order to provide meter electronics that can be used with any type of flowmeter.
The above and other problems are solved and an advance in the art is made by a drive algorithm for a Coriolis flowmeter in accordance with this invention. A first advantage of this invention is that a reliable start up for many types of Coriolis flowmeters under many types of material flow is ensured. A second advantage is that normal flow operation is maintained under varying flow conditions including flow conditions that cause existing Coriolis flowmeters to stall.
A drive algorithm in accordance with this invention is performed by meter electronics used to control operation of a Coriolis flowmeter. In a preferred embodiment, the meter electronics include a processor that executes instructions for the drive algorithm that are stored in a memory associated with the processor. Alternatively, this algorithm may also be performed by firmware or other types of circuitry.
A drive algorithm in accordance with this invention is performed in the following manner to assure proper start up of a Coriolis flowmeter. The algorithm begins by applying signals to a driver at a predetermined gain to initiate vibrating of a flow tube. The vibration of the flow tube is measured by pick-off signals received from pick-off sensors associated with the flow tube. The voltage of signals applied to the driver are then controlled to maintain a velocity of pick-off signals received from the pick-off sensors. The pick-off signals are then used to converge a notch filter to a drive frequency of the flow tube. After the notch filter is converged upon the drive frequency, voltage of the signals applied to the driver is controlled to maintain a displacement of the flow tubes.
The drive algorithm may also determine a frequency of oscillation of said flow tube from the pick-off signals. The frequency of oscillation may then be compared to a threshold frequency to determine whether the flow tube is a straight tube or a dual curved flow tube. If the frequency of oscillation is greater than the threshold frequency, the flow tube is a straight flow tube. If the frequency of oscillation is less than the threshold frequency, the flow tube is a dual curved flow tube.
The application of signals to the driver to initiate vibrating of the flow tube may include setting at least one variable for use in generating said drive signals. The variables may include a pick-off amplitude, a flow tube period, and a desired drive target. During application of the signals to the driver to initiate vibration, a kick gain signal is set to off and a programable gain amplifier is set to unity gain. At this time, a timer and a notch filter needed in subsequent steps may be initialized.
The determination of whether a notch filter has converged upon a drive frequency includes determining whether a time out has been reached and repeating the algorithm in response to a time out being reached.
Once the drive frequency is determined, the voltage of the drive signals is controlled to maintain displacement. In order to maintain the displacement, flowmeter parameters must be determined. The drive frequency determined by the convergence of the notch filter may be tested to determine whether the notch filter is within a desired range. If the notch filter is not in a desired range, the algorithm repeats from the beginning. The range is tested by comparing the notch filter to a minimum value and a maximum value. In a preferred embodiment, the minimum value is 30 hertz and the maximum value is 900 hertz.
In order to apply the signals to the driver to initiate vibrating of the flow tube, the amplitude of the signal may be set to an initial amplitude and an initial application time of the signals may be set. The signals are then applied at the set amplitude for a time period equaling the application time. The algorithm then determines whether the amplitudes of the pick-off signals are sufficient for the notch filter. If the amplitudes of the pick-off signals are not sufficient for the notch filter, then the amplitude and application time are adjusted and the process is repeated after a delay period. In a preferred embodiment, the amplitudes of the drive signals are adjusted by increasing a multiplying digital to analog conversion (DAC) by two and the application time is adjusted by increasing the application time by ten milliseconds. If the amplitudes of the pick-off signals do not become sufficient in a certain amount of time, the algorithm starts from the beginning for another iteration.
In a preferred embodiment, the voltage of the signals applied to the driver are controlled to maintain a velocity of pick-off signals received from pick-off sensors set at 50 millivolts.
After the notch filter converges on the drive frequency, flowmeter sensor parameters are determined. One such parameter is a proportional gain of the signals applied to the driver. A second such parameter is an integral gain of said signals applied to the driver.
After the notch filter has converged on the drive frequency and the signals are controlled to maintain a displacement, the algorithm tests to determine whether a drive loop gain is locked. The test may include determining drive error from pick-off signals received from the pick-off sensors associated with the flow tube. The algorithm may then determine whether the drive error has converged to zero. If the drive error does not converge to zero in a predetermined amount of time, the algorithm may start from the beginning.
Once a drive loop is determined to be locked, a programmable gain amplitude is set. Once the programmable gain amplitude is set, measurements are delayed for a predetermined amount of time to account for transients in the signal processing chain. The pick-off signals may then be monitored to determine whether the amplitude of the pick-off signals is maintained. If the amplitude of the pick-off signals is not maintained, a forgive process is performed. The forgive process monitors the pick-off signals for a predetermined amount of time to determine whether the amplitude returns to an appropriate level.
An aspect of the invention comprises a method for initializing a drive circuit which generates drive signals that are applied to a driver that is oscillating a flow tube, said method comprising the steps of:
applying said drive signals to said driver at a predetermined gain to initiate vibrating of said flow tube;
controlling a drive voltage of said drive signals applied to said driver to maintain a velocity of pick-off signals received from pick-off sensors associated with said flow tube,
determining whether a notch filter has converged on a drive frequency of said flow tube based on said pick-off signals, and
controlling said drive voltage of said drive signals applied to said driver to maintain a displacement of said flow tube in response to a determination that said notch filter has converged on said drive frequency.
Another aspect further comprises the step of:
receiving said pick-off signals from said pick-off sensors.
Another aspect comprises the step of:
determining said drive frequency of said flow tube based on said pick-off signals.
Another aspect is that said step of determining said drive frequency comprises the steps of:
comparing said drive frequency to a threshold frequency; and
determining said flow tube is a straight tube responsive to said drive frequency being greater than said threshold frequency.
Another aspect is that said step of determining said drive frequency further comprises the step of:
determining said flow tube is a curved flow tube responsive to said drive frequency being less than or equal to said threshold frequency.
Another aspect is that said step of applying said drive signals to said driver to initiate vibrating of said flow tube comprises the step of:
setting at least one variable for use in generating said drive signals.
Another aspect is that said step of setting said at least one variable comprises the step of:
setting a pick-off amplitude.
Another aspect is that said pick-off amplitude is set to a desired voltage.
Another aspect is that said step of setting said at least one variable comprises the step of:
setting a flow tube period.
Another aspect is that said step of setting said at least one variable comprises the step of:
setting a desired drive target.
Another aspect is that said desired drive target is set to a target voltage divided by a target.
Another aspect is that said step of applying said drive signals to said driver to initiate vibrating of said flow tube comprises the step of:
setting a kick gain signal to off.
Another aspect is that said step of applying said drive signals to said driver to initiate vibrating of said flow tube comprises the step of:
setting a programable gain amplifier to unity gain.
Another aspect is that said step of applying said drive signals to said driver to initiate vibrating of said flow tube comprises the step of:
initializing flags.
Another aspect is that said step of applying said drive signals to said driver to initiate vibrating of said flow tube comprises the step of:
initializing a timer.
Another aspect is that said step of applying said drive signals to said driver to initiate vibrating of said flow tube comprises the step of:
initializing a notch filter.
Another aspect is that said step of determining whether said notch filter has converged comprises the steps of:
determining whether a timer has reached a time out; and
returning to said step of applying drive signals to said driver in response to a determination said timer has reached said time out.
Another aspect is that said step of controlling said drive voltage of said drive signals to maintain said displacement further comprises the step of:
determining flowmeter parameters in response to a determination that said notch filter has converged to said drive frequency.
Another aspect comprises the steps of:
determining whether said notch filter has converged to a notch filter value that is within a desired range; and
returning to said step of applying drive signals to said driver responsive to a determination that said notch filter value is outside said desired range.
Another aspect is that said step of determining whether said notch filter value is within said desired range comprises the step of:
comparing said notch filter value to a minimum value.
Another aspect is that said minimum value is 30 hertz.
Another aspect is that said step of determining whether said notch filter value is within said desired range comprises the step of:
comparing said notch filter value to a maximum value.
Another aspect is that said maximum value is 900 hertz.
Another aspect is that said step of applying said drive signals to said driver to initiate vibrating of said flow tube comprises the step of:
setting amplitudes of said drive signals to initial amplitudes.
Another aspect is that said step of applying said drive signals to said driver to initiate vibrating of said flow tube comprises the step of:
setting an initial application time of said drive signals.
Another aspect is that said step of applying said drive signals to said driver to initiate vibrating of said flow tube comprises the step of:
applying said drive signals to said driver for a duration of said application time.
Another aspect is that said step of applying said drive signals to said driver to initiate vibrating of said flow tube comprises the step of:
determining whether amplitudes of said pick-off signals are sufficient for said notch filter.
Another aspect is that said step of applying said drive signals to said driver to initiate vibrating of said flow tube comprises the step of:
adjusting said amplitudes of said drive signals in response to a determination that said amplitudes of said pick-off signals are not sufficient for said notch filter.
Another aspect is that said step of adjusting said amplitudes of said drive signals comprises the step of:
increasing a multiplying digital to analog conversion by two.
Another aspect is that said step of applying said drive signals to said driver to initiate vibrating of said flow tube comprises the step of:
adjusting said application time in response to a determination that said amplitudes of said drive signals are not sufficient.
Another aspect is that said step of adjusting said application time comprises the step of:
increasing said application time by ten milliseconds.
Another aspect is that said step of applying said drive signals to said driver to initiate vibrating of said flow tube comprises the steps of:
waiting a delay period; and
applying said drive signals using said adjusted amplitude of said drive signals and said adjusted application time in response to waiting said delay period.
Another aspect is that said step of applying said drive signals to said driver to initiate vibrating of said flow tube comprises the step of:
determining whether a timer has reached a time out; and
repeating said step of applying said drive signals to said driver in response to a determination that said timer has reached said time out.
Another aspect is that said step of controlling said drive voltage of said drive signals applied to said driver to maintain said velocity comprises maintaining said velocity at least at 50 millivolts.
Another aspect comprises the step of:
determining flowmeter sensor parameters in response to a determination said notch filter has converged upon said drive frequency.
Another aspect is that said step of determining said flowmeter sensor parameters comprises the step of:
determining a proportional gain of said drive signals applied to said driver.
Another aspect is that said step of determining said flowmeter sensor parameters comprises the step of:
determining a integral gain of said drive signals applied to said driver.
Another aspect is that said step of controlling said drive voltage of said drive signals applied to said driver to maintain said displacement comprises the step of:
testing to determine whether a drive loop gain is locked.
Another aspect is that said step of testing comprises the step of:
determining drive error from said pick-off signals received from said pick-off sensors associated with said flow tube.
Another aspect is that said step of testing to determine whether a drive loop gain is locked further comprises the step of:
determining whether said drive error has converged to zero.
Another aspect is that said step of testing to determine whether a drive loop gain is locked comprises the steps of:
determining whether a timer has reached a time out; and
repeating said step of applying said drive signals to said driver responsive to said timer reaching said time out.
Another aspect is that said step of testing to determine whether a drive loop gain is locked further comprises:
repeating said step of applying said drive signals to said driver responsive to a determination said drive loop gain is not locked.
Another aspect is that said step of controlling said driver voltage of said drive signals applied to said driver to maintain said displacement comprises the steps of:
setting a programmable gain amplitude;
generating said drive signals to maintain an amplitude of said pick-off signals from said pick-off sensors associated with said flow tube;
determining whether said amplitude of said pick-off signals is maintained; and
performing a forgive process in response to said amplitude of said pick-off signals not being maintained.
Another aspect is that said step of controlling said drive voltage of said drive signals applied to said driver to maintain a displacement further comprises the step of:
delaying measurements of said pick-off signals for a predetermined amount of time to account for transients.
Another aspect is that said step of performing said forgive process comprises the steps of:
holding a last delta time calculation;
determining whether said amplitude of said pick-off signals returns to said maintained amplitude in a given amount of time; and
repeating said step of applying said driver signals to said driver in response to a determination that said amplitude of said pick-off signals did not return to said maintained amplitude of said pick-off signals in said given amount of time.
Another aspect comprises an apparatus for measuring a process parameter of a material having a flow tube through which said material flows, a driver that vibrates said flow tube, pick-off sensors associated with said flow tube to measure said vibrations, and meter electronics that generate drive signals transmitted to said driver to vibrate said flow tube and that receives pick-off signals from said pick-off sensors, said apparatus further comprising:
circuitry in said meter electronics configured to:
a.) apply said drive signals to said driver at a predetermined gain to initiate vibrating of said flow tube;
b.) control a drive voltage of said drive signals applied to said driver to maintain a velocity of said pick-off signals received from said pick-off sensors;
c.) determine whether a notch filter has converged to a drive frequency of said flow tube based on said pick-off signals; and
d.) control said drive voltage of said drive signals applied to said driver to maintain a displacement of said flow tube in response to a determination that said notch filter has converged on said drive frequency.
A further aspect comprises:
circuitry in said meter electronics configured to receive said pick-off signals from said pick-off sensors.
A further aspect comprises:
circuitry in said meter electronics configured to determine said drive frequency of said flow tube based on said pick-off signals.
Another aspect is that said circuitry is configured to:
compare said drive frequency to a threshold frequency, and determine said flow tube is a straight tube responsive to said drive frequency being greater than said threshold frequency.
Another aspect is that said circuitry is configured to:
determine said flow tube is a curved flow tube responsive to said drive frequency being less than or equal to said threshold frequency.
Another aspect is that said circuitry is configured to:
set at least one variable for use in generating said drive signals.
Another aspect is that said circuitry is configured to:
set a pick-off amplitude.
Another aspect is that said pick-off amplitude is set to a desired voltage.
Another aspect is that said circuitry is configured to:
a flow tube period.
Another aspect is that said circuitry is configured to:
set a desired drive target.
Another aspect is that said desired drive target is set to a target voltage divided by a target frequency.
Another aspect is that said circuitry is configured to:
set a kick gain signal to off.
Another aspect is that said circuitry is configured to:
set a programable gain amplifier to unity gain.
Another aspect is that said circuitry is configured to initialize flags.
Another aspect is that said circuitry is configured to initialize a timer.
Another aspect is that said circuitry is configured to initialize a notch filter.
Another aspect is that said circuitry is configured to:
determine whether a timer has reached a time out and return to circuitry in response to a determination said timer has reached said time out.
Another aspect is that said circuitry is configured to:
determine flowmeter parameters in response to a determination that said notch filter has converged to said drive frequency.
Another aspect is that said circuitry further comprises:
circuitry in said meter electronics configured to determine whether said notch filter has converged to a notch filter value that is within a desired range, and return to operation a.) responsive to a determination that said notch filter value is outside said desired range.
Another aspect is that said circuitry is configured to:
compare said notch filter value to a minimum value.
Another aspect is that said minimum value is 30 hertz.
Another aspect is that said circuitry is configured to:
compare said notch filter value to a maximum value.
Another aspect is that said maximum value is 900 hertz.
Another aspect is that said circuitry is configured to:
set amplitudes of said drive signals to initial amplitudes.
Another aspect is that said circuitry is configured to:
set an initial application time of said drive signals.
Another aspect is that said circuitry is configured to:
apply said drive signals to said driver for a duration of said application time.
Another aspect is that said circuitry is configured to:
determine whether amplitudes of said pick-off signals are sufficient for said notch filter.
Another aspect is that said circuitry is configured to:
adjust said amplitudes of said drive signals in response to a determination that said amplitudes of said pick-off signals are not sufficient for said notch filter.
Another aspect is that said circuitry is configured to:
increase a multiplying digital to analog conversion by two.
Another aspect is that said circuitry is configured to:
adjust said application time in response to a determination that said amplitudes of said drive signals are not sufficient.
Another aspect is that said circuitry is configured to:
increase said application time by ten milliseconds.
Another aspect is that said circuitry is configured to:
wait a delay period and apply said driver signals using said adjusted amplitude of said drive signals and said adjusted application time in response to waiting said delay period.
Another aspect is that said circuitry is configured to:
determine whether a timer has reached a time out and repeat operation a.) in response to a determination that said time out period ended.
Another aspect is that said circuitry is configured to maintain said velocity to at least at 50 millivolts.
Another aspect is that said circuitry is configured to:
determine flowmeter sensor parameters in response to a determination said notch filter has converged upon said drive frequency.
Another aspect is that said circuitry is configured to:
determine a proportional gain of said drive signals applied to said driver.
Another aspect is that said circuitry is configured to:
determine an integral gain of said drive signals applied to said driver.
Another aspect is that said circuitry is configured to:
perform a test to determine whether a drive loop gain is locked.
Another aspect is that said circuitry is configured to:
determine drive error from said pick-off signals received from said pick-off sensors associated with said flow tube.
Another aspect is that said circuitry is configured to:
determine whether said drive error has converged to zero.
Another aspect is that said circuitry is configured to:
determine whether a timer has reached time out, and repeat operation a.) responsive to said timer reaching said time out.
Another aspect is that said circuitry is configured to:
repeat operation a.) responsive to a determination said drive loop gain is not locked.
Another aspect is that said circuitry is configured to:
set a programmable gain amplitude, generate said drive signals to maintain an amplitude of said pick-off signals from said pick-off sensors associated with said flow tube, determine whether said amplitude of said pick-off signals is maintained, and perform a forgive process in response to said amplitude of said pick-off signals not being maintained.
Another aspect is that said circuitry is configured to:
delay measurements of said pick-off signals for a predetermined amount of time to account for transients.
Another aspect is that said circuitry is configured to:
determine whether said amplitude of said pick-off signals returns to said maintained amplitude in a given amount of time, and repeat operation a.) in response to a determination that said amplitude did not return to said maintained amplitude of said pick-off signals in said given amount of time.